﻿using System;

namespace YJKRevitBase.ExcelUtility.ExcelORM
{
	[AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = false)]
	public class PropertyAttribute : Attribute
	{
		public int UseColumnIndex
		{
			get
			{
				return this.m_useColumnIndex;
			}
			set
			{
				this.m_useColumnIndex = value;
			}
		}

		public string UseColumnName
		{
			get
			{
				return this.m_useColumnName;
			}
			set
			{
				this.m_useColumnName = value;
			}
		}

		public bool UseLastValueWhenNull
		{
			get
			{
				return this.m_bUseLastValueWhenNull;
			}
			set
			{
				this.m_bUseLastValueWhenNull = value;
			}
		}

		public bool ChangeToNextRowWhenReadValue
		{
			get
			{
				return this.m_bChangeToNextRowWhenReadValue;
			}
			set
			{
				this.m_bChangeToNextRowWhenReadValue = value;
			}
		}

		public string UseTransformerName
		{
			get
			{
				return this.m_strUseTransformerName;
			}
			set
			{
				this.m_strUseTransformerName = value;
			}
		}

		internal ChageValueDelegate UseTransformer
		{
			get
			{
				return this.m_useTransformer;
			}
			set
			{
				this.m_useTransformer = value;
			}
		}

		private int m_useColumnIndex = -1;

		private string m_useColumnName;

		private bool m_bUseLastValueWhenNull;

		private bool m_bChangeToNextRowWhenReadValue;

		private string m_strUseTransformerName;

		private ChageValueDelegate m_useTransformer;
	}
}
